package com.xidian.zhiancloud.model.exam;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xidian.zhiancloud.qo.BaseReqQuery;

/**
 * 试卷对象 t_exam_paper
 * 
 * @author zhouweitao
 * @date 2021-03-05
 */
public class TExamPaper extends BaseReqQuery
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 0普通试卷 ， 1随机试卷 */
    private String type;

    /** 0查看成绩， 1查看试卷 */
    private String random;

    /** 0正常， 1停用 */
    private String status;

    /** 试卷名称 */
    private String name;

    /** 注意事项 */
    private String notice;

    /** 单选每个分数 */
    private BigDecimal single;

    /** 多选每题分数 */
    private BigDecimal multiple;

    /** 判断题每题每题分数 */
    private BigDecimal estimate;

    /** 及格分数 */
    private BigDecimal pass;
    
    private TExamConfig config;
    
    private List<TExamPeperQuestion> questions;
    
    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;


    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setRandom(String random) 
    {
        this.random = random;
    }

    public String getRandom() 
    {
        return random;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setNotice(String notice) 
    {
        this.notice = notice;
    }

    public String getNotice() 
    {
        return notice;
    }
    public void setSingle(BigDecimal single) 
    {
        this.single = single;
    }

    public BigDecimal getSingle() 
    {
        return single;
    }
    public void setMultiple(BigDecimal multiple) 
    {
        this.multiple = multiple;
    }

    public BigDecimal getMultiple() 
    {
        return multiple;
    }
    public void setEstimate(BigDecimal estimate) 
    {
        this.estimate = estimate;
    }

    public BigDecimal getEstimate() 
    {
        return estimate;
    }
    public void setPass(BigDecimal pass) 
    {
        this.pass = pass;
    }

    public BigDecimal getPass() 
    {
        return pass;
    }

    public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public TExamConfig getConfig() {
		return config;
	}

	public void setConfig(TExamConfig config) {
		this.config = config;
	}

	public List<TExamPeperQuestion> getQuestions() {
		return questions;
	}

	public void setQuestions(List<TExamPeperQuestion> questions) {
		this.questions = questions;
	}

	@Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("type", getType())
            .append("random", getRandom())
            .append("status", getStatus())
            .append("name", getName())
            .append("notice", getNotice())
            .append("single", getSingle())
            .append("multiple", getMultiple())
            .append("estimate", getEstimate())
            .append("pass", getPass())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
